package compound;

import compound.entity.duck.DuckCall;
import compound.entity.duck.MallardDuck;
import compound.entity.duck.RedHeadDuck;
import compound.entity.duck.RubberDuck;

public class CountingDuckFactory extends AbstractDuckFactory {
    @Override
    public QuackAble createMallardDuck() {
        return new QuackCounter(new MallardDuck());
    }

    @Override
    public QuackAble createRedHeadDuck() {
        return new QuackCounter(new RedHeadDuck());
    }

    @Override
    public QuackAble createDuckCall() {
        return new QuackCounter(new DuckCall());
    }

    @Override
    public QuackAble createRubberDuck() {
        return new QuackCounter(new RubberDuck());
    }
}
